﻿#include "GlobalDataFactory.h"
#include "FITK_Component/FITKAcousticsModel/FITKAcousticsGeometryData.h"
#include "FITK_Component/FITKAcousticsModel/FITKAcousticsDiscModel.h"
#include "FITK_Component/FITKAcousticsModel/FITKAcousticsGroupData.h"
#include "FITK_Component/FITKAcousticsPhysics/FITKAcousticsPhysics.h"
#include "FITK_Component/FITKAcousticsPostData/FITKAcousticsPostData.h"

Core::FITKAbstractDataObject *GlobalDataFactory::createMeshData()
{
    return new Acoustics::FITKAcousticsDiscModel;
}

Core::FITKAbstractDataObject* GlobalDataFactory::createGeoData()
{
    // 创建几何数据
    return new Acoustics::FITKAcousticsGeometryData;
}

Core::FITKAbstractDataObject *GlobalDataFactory::createPhysicsData()
{
    // 创建算例求解的物理场数据
    return new Acoustics::FITKAcousticsPhysics;
}

Core::FITKAbstractDataObject *GlobalDataFactory::createPostData()
{
    // 创建后处理数据
    return new Acoustics::FITKAcousticsPostData;
}

QHash<int, Core::FITKAbstractDataObject *> GlobalDataFactory::createOtherData()
{
    QHash<int, Core::FITKAbstractDataObject *> otherData;
    // 创建其他数据
    otherData.insert(66, new Acoustics::FITKAcousticsGroupManager);

    return otherData;
}
